package com.youfang.sixthmedia.net;

import java.util.ArrayList;
import java.util.List;

import ch.boye.httpclientandroidlib.message.BasicNameValuePair;

import com.gzit.utils.StringUtils;

public class Pair extends BasicNameValuePair {

	public Pair(String name, String value) {
		super(name, value);

	}

	public String toString() {
		return this.getName() + ":" + this.getValue();
	}

	public static List<Pair> EMPTY_PAIRS = new ArrayList<Pair>();

	public static class PairGen {
		ArrayList<Pair> pairs = new ArrayList<Pair>();

		public List<Pair> get() {
			return pairs;
		}

		public PairGen p(String name, String value, boolean ingoreBlank) {
			if (ingoreBlank && StringUtils.isBlank(value)) {
				return this;
			}

			pairs.add(new Pair(name, value));
			return this;
		}

		public PairGen p(String name, String value) {
			return p(name, value, true);
		}

		public PairGen p(String name, int value) {
			pairs.add(new Pair(name, String.valueOf(value)));
			return this;
		}

		public PairGen p(String name, boolean value) {
			pairs.add(new Pair(name, String.valueOf(value)));
			return this;
		}

	}

	public static PairGen p(String name, int value) {
		return new PairGen().p(name, String.valueOf(value));
	}

	public static PairGen p(String name, boolean value) {
		return new PairGen().p(name, String.valueOf(value));
	}

	public static PairGen p(String name, String value) {

		return StringUtils.isBlank(value) ? new PairGen() : new PairGen().p(
				name, value);

	}

}
